package com.diaohw.module.metadata.obj.vo;

import com.diaohw.module.metadata.enums.ItemTypeEnums;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serial;
import java.io.Serializable;

/**
* 元数据属性 VO
*
* @author D-Hw
* @since 2025-04-11
*/
@Data
@Accessors(chain = true)
@Schema(name = "MetaItemDO VO", description = "元数据属性 VO")
public class MetaItemVO implements Serializable {


    @Serial
    private static final long serialVersionUID = 1L;
    /**
     * 主键ID
     */
    @Schema(description = "ID")
    private String id;

    /**
     * 元数据ID
     */
    @Schema(description = "元数据ID")
    private String metaId;

    /**
     * 元数据CODE
     */
    @Schema(description = "元数据CODE")
    private String metaCode;

    /**
     * 字段名称
     */
    @Schema(description = "字段名称")
    private String itemName;

    /**
     * 字段CODE
     */
    @Schema(description = "字段CODE")
    private String itemCode;

    /**
     * 字段类型
     */
    @Schema(description = "字段类型")
    private ItemTypeEnums dataType;

    /**
     * 是否为多条记录
     */
    @Schema(description = "是否为多条记录")
    private Boolean multiple;

    /**
     * 是否必填
     */
    @Schema(description = "是否必填")
    private String required;

    /**
     * 最小值
     */
    @Schema(description = "最小值")
    private String minVal;

    /**
     * 最大值
     */
    @Schema(description = "最大值")
    private String maxVal;

    /**
     * 默认值
     */
    @Schema(description = "默认值")
    private String defaultVal;

    /**
     * 单位
     */
    @Schema(description = "单位")
    private String unit;

    /**
     * 备注
     */
    @Schema(description = "备注")
    private String remark;

}
